//
//  YPRequestClient.h
//  Youpin
//
//  Created by xiaowuxiaowu on 2017/4/12.
//  Copyright © 2017年 xiaowuxiaowu. All rights reserved.
//

#import "APIRequestClient.h"

@interface TPRequestClient : APIRequestClient
+(instancetype)sharedClient;




/**
 获取微信code

 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getWXLoginCode:(NSString *)code success:(successBlock)success
              failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


/**
 登录

 @param name 名称
 @param password 密码
 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getLoginName:(NSString *)name toPass:(NSString *)password code:(NSString *)code success:(successBlock)success
            failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;



/**
 手机注册

 @param phone <#phone description#>
 @param password <#password description#>
 @param code <#code description#>
 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getLogin_get_phoneRegisterPhone:(NSString *)phone toPass:(NSString *)password toCode:(NSString *)code  name:(NSString *)name success:(successBlock)success
                      failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


//找回密码
-(void)getLogin_forgetPswPhone:(NSString *)phone toPass:(NSString *)password toCode:(NSString *)code success:(successBlock)success
                       failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;



typedef NS_ENUM(NSInteger, LoginCodeStyle){
    LoginCodeStyleLogin, //快捷登录
    LoginCodeStyleSingn, //注册
    LoginCodeStyleBindMobile, //绑定手机号码
    LoginCodeStyleEditMobile, //更换手机号码
    LoginCodeStyleForget, //忘记手机号码
    
};
extern NSString *NSStringFromLoginCodeStyle(LoginCodeStyle style);

/**
 获取验证码

 @param name 手机号码
 @param type 1：注册 2：找回密码 3：设置手机号码 4：修改手机号
 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getLoginCodeName:(NSString *)name toType:(LoginCodeStyle)type success:(successBlock)success
                failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
-(void)getRequestCodeButton:(UIButton *)sender mobile:(NSString *)mobile toType:(LoginCodeStyle)type;

/**
 设置密码

 @param pass 密码
 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getEditPsw:(NSString *)pass success:(successBlock)success
          failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;



/**
 修改密码

 @param oldPsw 旧的密码
 @param psw 新的密码
 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getUpdOldPsw:(NSString *)oldPsw toPass:(NSString *)psw  success:(successBlock)success
            failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


/**
 绑定微信接口

 @param code 微信code
 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getSetWxchatCode:(NSString *)code success:(successBlock)success
                failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


//解绑微信
-(void)getCancelWxchat_success:(successBlock)success
                       failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;

//修改设置手机 3：设置手机号码 4：修改手机号码
//修改设置手机 3：设置手机号码 4：修改手机号码
-(void)getEditPhone:(NSString *)phone code:(NSString *)code user_name:(NSString *)user_name  success:(successBlock)success
            failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;

/**
 编辑用户

 @param name <#name description#>
 @param emcard <#emcard description#>
 @param sex <#sex description#>
 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getIntermediaryEditName:(NSString *)name emcard:(NSString *)emcard sex:(NSString *)sex photo:(NSString *)photo idcard:(NSString *)idcard success:(successBlock)success
                       failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;




/**
 获取个人信息

 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getInfo_success:(successBlock)success
               failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;

/**
 退出登录

 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getloginOut_success:(successBlock)success
                   failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;





//获取七牛云
-(void)getUploadTokenSuccess:(successBlock)success
                     failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


//编辑个人信息
-(void)getupdInfoTouristEditKey:(NSString *)key value:(NSString *)value success:(successBlock)success
                        failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
-(void)getupdInfoTouristEditDict:(NSDictionary *)dict success:(successBlock)success
                         failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


//意见反馈
-(void)getFeedbackMessage:(NSString *)message success:(successBlock)success
                         failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;



//城市列表
-(void)getGetAllCity_success:(successBlock)success
                 failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


/**
 广告列表

 @param success <#success description#>
 @param failure <#failure description#>
 @param nonetWorkBlock <#nonetWorkBlock description#>
 */
-(void)getAdList_success:(successBlock)success
                 failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;

//商品

//商品分类
-(void)getTemplateCategory_success:(successBlock)success
                           failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;

//商品效果
-(void)getTemplateEffect_success:(successBlock)success
                         failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
//诊所列表
-(void)getTemplateClinic_success:(successBlock)success
                         failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


/**
 //模板列表

 @param categoryId 分类id
 @param cityName 城市名称
 @param goods_salenum 顺序
 @param clinic_id 诊所id
 @param name 商品名称
 @param recommend 是否是推荐
 @param current 页数
 @param size 条数
 @param success
 @param failure
 @param nonetWorkBlock
 */
-(void)getTemplateListCateId:(NSInteger)categoryId cityName:(NSString *)cityName goods_salenum:(NSString *)goods_salenum clinic_id:(NSInteger)clinic_id name:(NSString *)name recommend:(BOOL)recommend current:(NSInteger )current size:(NSInteger )size success:(successBlock)success
                     failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


//模板详情模板详情接口 (判断是否已购买该模板 再返回该信息)
-(void)getTemplateInfotemplateId:(NSInteger )templateId success:(successBlock)success
                      failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


//预约
-(void)getSubmitAppointmentShopId:(NSInteger)goods_id appoint_time:(NSString *)appoint_time appoint_money:(NSString *)appoint_money payment_method:(NSString *)payment_method success:(successBlock)success
                          failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
//加入收藏
-(void)getCollectionCreateId:(NSInteger)templateId  isAdd:(BOOL)isAdd  success:(successBlock)success
                     failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;



#pragma mark---内容
//内容列表
-(void)getArticlePinglunList_current:(NSInteger )current size:(NSInteger )size success:(successBlock)success
                             failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
//内容详情
-(void)getArticleDetail_current:(NSInteger )current size:(NSInteger )size article_id:(NSInteger)article_id success:(successBlock)success
                        failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
//发布内容
-(void)getArticleReplyId:(NSInteger )article_id content:(NSString *)content success:(successBlock)success
                 failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;


#pragma mark ---我的
//我的收藏
-(void)getUserCollection_current:(NSInteger )current size:(NSInteger )size success:(successBlock)success
                         failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
//我的预约
-(void)getUserAppointment_current:(NSInteger )current size:(NSInteger )size success:(successBlock)success
                          failure:(failureBlock)failure nonetWork:(nonetWorkBlock)nonetWorkBlock;
@end

